home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / editors / pur_c_vi.zoo / readme < prev    next >
Encoding:
Text File  |  1992-08-11  |  5.1 KB  |  125 lines

  1. STEVIE - ST Editor for VI Enthusiasts   ...Tim Thompson...twitch!tjt...
  2. =====================================
  3.  
  4. The STEVIE editor is a fairly accurate (in the small subset of commands
  5. it chooses to implement) version of the VI editor.  It was written
  6. at a time when alternatives (ie. VIX) were not available.  To VI users,
  7. STEVIE should provide a much more familiar environment than VIX, but has
  8. nowhere near the capabilities (or speed), in general.
  9.  
  10. Features/Limitations
  11. ====================
  12.  
  13. - The "." (repeat last operation) and "u" (undo last insertion or
  14.   deletion) commands are available, and will repeat/undo almost
  15.   anything.
  16.  
  17. - The commands implemented in STEVIE happen to be the subset of
  18.   VI commands used by its author (suprise!).  A fair number of
  19.   additional (positioning and substitution) commands should be
  20.   easy to add.  Regular expressions and global substitutions
  21.   are not implemented.
  22.  
  23. - STEVIE is limited to editing files < 64K.  The source code has no
  24.   built-in limitations, but the file is kept in memory as a single
  25.   contiguous stream of bytes.  This implies various limitations,
  26.   among them the fact that operations such as insert and delete will
  27.   slow down (by a LOT, in the current implementation) as the file
  28.   being edited grows larger.  The slowness could be eliminated by
  29.   some reworking, which I'm unmotiviated to do, since I rarely edit
  30.   files larger than 16K.  Scrolling in general is also unnecessarily
  31.   slow.  Reading/writing files is also slow.
  32.  
  33. - Known glitches/annoyances: <control-d> scrolling works strangely.
  34.   Long (>80 chars) lines are usually handled okay, but strange
  35.   (positional) things sometime happen at the bottom of the screen.
  36.   Backspacing at the beginning of a line, in insert mode, isn't handled
  37.   correctly.  Undoing insertions at the end of a line are sometimes
  38.   off by a character.  The :r command does not work very well.
  39.   A final line that does not end in '\n' is troublesome.
  40.  
  41. - There is some support in the editor for displaying and editing binary
  42.   files.  Giving a '-b' option tells the editor that you are intentionally
  43.   editing a binary file.  Unprintable characters are displayed in a
  44.   [xxx] format, where xxx is either octal or hex (if you use the -x
  45.   option).  The binary editing support is mostly an untested hack
  46.   (although it was one of the original goals of the editor, so the
  47.   support for it was not unplanned).  If it works, fine; I'm not
  48.   claiming that it does.
  49.  
  50. - Although STEVIE has been used with no problems for several months,
  51.   it no doubt contains bugs that will surface when used by others.
  52.   Cautious initial use is recommended.
  53.  
  54. Commands
  55. ========
  56.  
  57.    Some commands can make use of a numeric prefix, indicated in
  58.    the summary below as [#].
  59.  
  60.    Cursor movement commands
  61.    ========================
  62.    control-l         Redraw screen
  63.    control-d         Cursor down 1/2 screen
  64.    control-u         Cursor up 1/2 screen
  65.    control-f         Cursor forward 1 screen
  66.    control-b         Cursor back 1 screen
  67.    control-g         Give info on file
  68.  
  69.       h              Cursor left 1 char
  70.       j              Cursor down 1 char
  71.       k              Cursor up 1 char
  72.       l              Cursor right 1 char
  73.       $              Cursor to end of line
  74.       ^ -or- 0       Cursor to beginning of line
  75.       b              Cursor back 1 word
  76.       w              Cursor forward 1 word\n\
  77.       [#]G           Goto line # (or last line if no #)
  78.  
  79.     Modification commands
  80.     =====================
  81.     x           Delete 1 char
  82.     dw          Delete 1 word
  83.     D           Delete rest of line
  84.     [#]dd       Delete 1 (or #) lines
  85.     C           Change rest of line
  86.     cw          Change word
  87.     cc          Change line
  88.     r           Replace single character
  89.     [#]yy       Yank 1 (or #) lines
  90.     p           Insert last yanked or deleted line(s)
  91.     P              below (p) or above (P) current line
  92.     J           Join current and next line
  93.     [#]<<       Shift line left 1 (or #) tabs
  94.     [#]>>       Shift line right 1 (or #) tabs
  95.     i           Enter Insert mode (<ESC> to exit)
  96.     a           Append (<ESC> to exit) \n\
  97.     o           Open line (<ESC> to exit)\n\
  98.  
  99.     Miscellaneous
  100.     =============
  101.     .           Repeat last operation.  The works for most (but not all)
  102.         commands, including insertions.
  103.     u           Undo last insert or delete.   This works for most
  104.         operations, although there are undoubtedly some for
  105.         which it will not.
  106.     /str/       Search for 'str' (NO REGULAR EXPRESSIONS)
  107.     ?str?       Search backward for 'str'
  108.     n           Repeat previous search
  109.     :.=         Print current line number
  110.     :$=         Print number of lines in file
  111.     H        Help - a quick summary of commands
  112.  
  113.     File manipulation
  114.     =================
  115.     :w          Write file
  116.     :wq         Write and quit
  117.     :e {file}   Edit a new file
  118.     :e!         Re-read current file
  119.     :f          Print file into (current line and total # of lines)
  120.     :f {file}   Change current file name
  121.     :q          Quit
  122.     :q!         Quit (no save)
  123.  
  124.  
  125.